package model

import (
	"gitee.com/chunanyong/zorm"
)

// SysCasbinRuleStructTableName 表名常量,方便直接调用
const SysCasbinRuleStructTableName = "sys_casbin_rule"

// SysCasbinRuleStruct
type SysCasbinRuleStruct struct {
	//引入默认的struct,隔离IEntityStruct的方法改动
	zorm.EntityStruct

	//Id
	Id int64 `column:"id"`

	//Ptype
	Ptype string `column:"ptype"`

	//V0
	V0 string `column:"v0"`

	//V1
	V1 string `column:"v1"`

	//V2
	V2 string `column:"v2"`

	//V3
	V3 string `column:"v3"`

	//V4
	V4 string `column:"v4"`

	//V5
	V5 string `column:"v5"`

	//V6
	V6 string `column:"v6"`

	//V7
	V7 string `column:"v7"`

	//------------------数据库字段结束,自定义字段写在下面---------------//
	//如果查询的字段在column tag中没有找到,就会根据名称(不区分大小写,支持 _ 转驼峰)映射到struct的属性上
}

// GetTableName 获取表名称
// IEntityStruct 接口的方法,实体类需要实现!!!
func (entity *SysCasbinRuleStruct) GetTableName() string {
	return SysCasbinRuleStructTableName
}

// GetPKColumnName 获取数据库表的主键字段名称.因为要兼容Map,只能是数据库的字段名称
// 不支持联合主键,变通认为无主键,业务控制实现(艰难取舍)
// 如果没有主键,也需要实现这个方法, return "" 即可
// IEntityStruct 接口的方法,实体类需要实现!!!
func (entity *SysCasbinRuleStruct) GetPKColumnName() string {
	//如果没有主键
	//return ""
	return "id"
}
